package org.rguess.patterns.interfaces.facade;

public class Computer {
	Power power;
	MainBoard mainBoard;
	HardDisk hardDisk;
	OperateionSystem operateionSystem;

	public Computer(Power power, MainBoard mainBoard, HardDisk hardDisk,
			OperateionSystem operateionSystem) {
		this.power = power;
		this.mainBoard = mainBoard;
		this.hardDisk = hardDisk;
		this.operateionSystem = operateionSystem;
	}

	public void Startup()
	// 启动计算机
	{
		this.power.Connect();
		this.mainBoard.On();
		this.hardDisk.Run();
		this.operateionSystem.Startup();
	}

	public void Shutdown()
	// 关闭计算机
	{
		this.operateionSystem.Shutdown();
		this.hardDisk.Stop();
		this.mainBoard.Off();
		this.power.Disconnect();
	}
}
